#ifndef FILESYSTEMMODEL_H
#define FILESYSTEMMODEL_H

#include <QDirModel>
#include <QSet>
#include <QPersistentModelIndex>


class FileSystemModel : public QDirModel
{
    Q_OBJECT
public:
    FileSystemModel();
    QSet<QPersistentModelIndex> checkedIndexes;
    Qt::ItemFlags flags(const QModelIndex &index) const;
    QVariant data(const QModelIndex &index, int role) const;
    bool setData(const QModelIndex &index, const QVariant &value, int role);
private:
    bool recursiveCheck(const QModelIndex &index, const QVariant &value);
};

#endif // FILESYSTEMMODEL_H
